package udpserver

import "strconv"

// UdpOption UDP配置选项
type UdpOption struct {
	IP           string
	Port         int
	Backlog      int               //UDP限制
	AcceptFilter func([]byte) bool //新连接的过滤器
}

// NewUdpOption 根据IP和Port创建一个UDP配置
func NewUdpOption(IP string, Port int) *UdpOption {
	return &UdpOption{
		IP:      IP,
		Port:    Port,
		Backlog: 128,
		AcceptFilter: func(pkt []byte) bool {
			return pkt[0] == 0xAA
		},
	}
}

// Address 获取UDP连接地址
func (o UdpOption) Address() string {
	return o.IP + ":" + strconv.Itoa(o.Port)
}
